tree 797102a66c1a80be1a9715d512a03266b6ac712f
parent 054aa8d439b9185d4f5eb9a90282d1ce74772969
parent 06d5d558f5a30582546dcbe9327601af867ce1c9
author Linus Torvalds <torvalds@linux-foundation.org> 1638556725 -0800
committer Linus Torvalds <torvalds@linux-foundation.org> 1638556725 -0800
mergetag object 06d5d558f5a30582546dcbe9327601af867ce1c9
 type commit
 tag libata-5.16-rc4
 tagger Damien Le Moal <damien.lemoal@opensource.wdc.com> 1638527496 +0900
 
 libata fixes for 5.16-rc4
 
 Two sparse warning fixes and a couple of patches to fix an issue with
 sata_fsl driver module removal:
 
 * A couple of patches to avoid sparse warnings in libata-sata and
   in the pata_falcon driver (from Yang and Finn).
 * A couple of sata_fsl driver patches fixing IRQ free and proc
   unregister on module removal (from Baokun).
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSRPv8tYSvhwAzJdzjdoc3SxdoYdgUCYanzwQAKCRDdoc3SxdoY
 dhBlAP92gjrDrWQrpmO/yIpA+wY5IdzbDldY/32f/aMMOu3exAEAxiD4vQhY9x39
 qRmZyIq74zWUP9NXdqkhlLL3YYI/uA4=
 =uwTI
 -----END PGP SIGNATURE-----

Merge tag 'libata-5.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata

Pull libata fixes from Damien Le Moal:
 "Two sparse warning fixes and a couple of patches to fix an issue with
  sata_fsl driver module removal:

   - A couple of patches to avoid sparse warnings in libata-sata and in
     the pata_falcon driver (from Yang and Finn).

   - A couple of sata_fsl driver patches fixing IRQ free and proc
     unregister on module removal (from Baokun)"

* tag 'libata-5.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
  ata: replace snprintf in show functions with sysfs_emit
  sata_fsl: fix warning in remove_proc_entry when rmmod sata_fsl
  sata_fsl: fix UAF in sata_fsl_port_stop when rmmod sata_fsl
  pata_falcon: Avoid type warnings from sparse
