WSL2-Linux-Kernel/drivers/scsi
Linus Torvalds 888d3c9f7f sysctl-6.4-rc1
This pull request goes with only a few sysctl moves from the
 kernel/sysctl.c file, the rest of the work has been put towards
 deprecating two API calls which incur recursion and prevent us
 from simplifying the registration process / saving memory per
 move. Most of the changes have been soaking on linux-next since
 v6.3-rc3.
 
 I've slowed down the kernel/sysctl.c moves due to Matthew Wilcox's
 feedback that we should see if we could *save* memory with these
 moves instead of incurring more memory. We currently incur more
 memory since when we move a syctl from kernel/sysclt.c out to its
 own file we end up having to add a new empty sysctl used to register
 it. To achieve saving memory we want to allow syctls to be passed
 without requiring the end element being empty, and just have our
 registration process rely on ARRAY_SIZE(). Without this, supporting
 both styles of sysctls would make the sysctl registration pretty
 brittle, hard to read and maintain as can be seen from Meng Tang's
 efforts to do just this [0]. Fortunately, in order to use ARRAY_SIZE()
 for all sysctl registrations also implies doing the work to deprecate
 two API calls which use recursion in order to support sysctl
 declarations with subdirectories.
 
 And so during this development cycle quite a bit of effort went into
 this deprecation effort. I've annotated the following two APIs are
 deprecated and in few kernel releases we should be good to remove them:
 
   * register_sysctl_table()
   * register_sysctl_paths()
 
 During this merge window we should be able to deprecate and unexport
 register_sysctl_paths(), we can probably do that towards the end
 of this merge window.
 
 Deprecating register_sysctl_table() will take a bit more time but
 this pull request goes with a few example of how to do this.
 
 As it turns out each of the conversions to move away from either of
 these two API calls *also* saves memory. And so long term, all these
 changes *will* prove to have saved a bit of memory on boot.
 
 The way I see it then is if remove a user of one deprecated call, it
 gives us enough savings to move one kernel/sysctl.c out from the
 generic arrays as we end up with about the same amount of bytes.
 
 Since deprecating register_sysctl_table() and register_sysctl_paths()
 does not require maintainer coordination except the final unexport
 you'll see quite a bit of these changes from other pull requests, I've
 just kept the stragglers after rc3.
 
 Most of these changes have been soaking on linux-next since around rc3.
 
 [0] https://lkml.kernel.org/r/ZAD+cpbrqlc5vmry@bombadil.infradead.org
 -----BEGIN PGP SIGNATURE-----
 
 iQJGBAABCgAwFiEENnNq2KuOejlQLZofziMdCjCSiKcFAmRHAjQSHG1jZ3JvZkBr
 ZXJuZWwub3JnAAoJEM4jHQowkoinTzgQAI/uKHKi0VlUR1l2Psl0XbseUVueuyj3
 ZDxSJpbVUmsoDf2MlLjzB8mYE3ricnNTDbLr7qOyA6pXdM1N0mY5LQmRVRu8/ffd
 2T1hQ5pl7YnJdWP5dPhcF9Y+jnu1tjX1MW5DS4fzllwK7FnD86HuIruGq52RAPS/
 /FH+BD9eodLWWXk6A/o2GFqoWxPKQI0GLxEYWa7Hg7yt8E/3PQL9QsRzn8i6U+HW
 BrN/+G3YD1VCCzXu0UAeXnm+i1Z7CdvqNdZuSkvE3DObiZ5WpOS+/i7FrDB7zdiu
 zAbHaifHnDPtcK3w2ZodbLAAwEWD/mG4iwIjE2kgIMVYxBv7TFDBRREXAWYAevIT
 UUuZnWDQsGaWdjywrebaUycEfd6dytKyan0fTXgMFkcoWRjejhitfdM2iZDdQROg
 q453p4HqOw4vTrhy4ov4zOX7J3EFiBzpZdl+SmLqcXk+jbLVb/Q9snUWz1AFtHBl
 gHoP5bS82uVktGG3MsObjgTzYYMQjO9YGIrVuW1VP9uWs8WaoWx6M9FQJIIhtwE+
 h6wG2s7CjuFWnS0/IxWmDOn91QyUn1w7ohiz9TuvYj/5GLSBpBDGCJHsNB5T2WS1
 qbQRaZ2Kg3j9TeyWfXxdlxBx7bt3ni+J/IXDY0zom2sTpGHKl8D2g5AzmEXJDTpl
 kd7Z3gsmwhDh
 =0U0W
 -----END PGP SIGNATURE-----

Merge tag 'sysctl-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux

Pull sysctl updates from Luis Chamberlain:
 "This only does a few sysctl moves from the kernel/sysctl.c file, the
  rest of the work has been put towards deprecating two API calls which
  incur recursion and prevent us from simplifying the registration
  process / saving memory per move. Most of the changes have been
  soaking on linux-next since v6.3-rc3.

  I've slowed down the kernel/sysctl.c moves due to Matthew Wilcox's
  feedback that we should see if we could *save* memory with these moves
  instead of incurring more memory. We currently incur more memory since
  when we move a syctl from kernel/sysclt.c out to its own file we end
  up having to add a new empty sysctl used to register it. To achieve
  saving memory we want to allow syctls to be passed without requiring
  the end element being empty, and just have our registration process
  rely on ARRAY_SIZE(). Without this, supporting both styles of sysctls
  would make the sysctl registration pretty brittle, hard to read and
  maintain as can be seen from Meng Tang's efforts to do just this [0].
  Fortunately, in order to use ARRAY_SIZE() for all sysctl registrations
  also implies doing the work to deprecate two API calls which use
  recursion in order to support sysctl declarations with subdirectories.

  And so during this development cycle quite a bit of effort went into
  this deprecation effort. I've annotated the following two APIs are
  deprecated and in few kernel releases we should be good to remove
  them:

   - register_sysctl_table()
   - register_sysctl_paths()

  During this merge window we should be able to deprecate and unexport
  register_sysctl_paths(), we can probably do that towards the end of
  this merge window.

  Deprecating register_sysctl_table() will take a bit more time but this
  pull request goes with a few example of how to do this.

  As it turns out each of the conversions to move away from either of
  these two API calls *also* saves memory. And so long term, all these
  changes *will* prove to have saved a bit of memory on boot.

  The way I see it then is if remove a user of one deprecated call, it
  gives us enough savings to move one kernel/sysctl.c out from the
  generic arrays as we end up with about the same amount of bytes.

  Since deprecating register_sysctl_table() and register_sysctl_paths()
  does not require maintainer coordination except the final unexport
  you'll see quite a bit of these changes from other pull requests, I've
  just kept the stragglers after rc3"

Link: https://lkml.kernel.org/r/ZAD+cpbrqlc5vmry@bombadil.infradead.org [0]

* tag 'sysctl-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux: (29 commits)
  fs: fix sysctls.c built
  mm: compaction: remove incorrect #ifdef checks
  mm: compaction: move compaction sysctl to its own file
  mm: memory-failure: Move memory failure sysctls to its own file
  arm: simplify two-level sysctl registration for ctl_isa_vars
  ia64: simplify one-level sysctl registration for kdump_ctl_table
  utsname: simplify one-level sysctl registration for uts_kern_table
  ntfs: simplfy one-level sysctl registration for ntfs_sysctls
  coda: simplify one-level sysctl registration for coda_table
  fs/cachefiles: simplify one-level sysctl registration for cachefiles_sysctls
  xfs: simplify two-level sysctl registration for xfs_table
  nfs: simplify two-level sysctl registration for nfs_cb_sysctls
  nfs: simplify two-level sysctl registration for nfs4_cb_sysctls
  lockd: simplify two-level sysctl registration for nlm_sysctls
  proc_sysctl: enhance documentation
  xen: simplify sysctl registration for balloon
  md: simplify sysctl registration
  hv: simplify sysctl registration
  scsi: simplify sysctl registration with register_sysctl()
  csky: simplify alignment sysctl registration
  ...
2023-04-27 16:52:33 -07:00
..
aacraid Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
aic7xxx
aic94xx scsi: aic94xx: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
arcmsr Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
arm scsi: powertec: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
be2iscsi Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
bfa scsi: bfa: Drop redundant pci_enable_pcie_error_reporting() 2023-03-09 22:00:38 -05:00
bnx2fc
bnx2i scsi: iscsi: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
csiostor scsi: csiostor: Remove unnecessary aer.h include 2023-03-09 22:00:38 -05:00
cxgbi Networking changes for 6.4. 2023-04-26 16:07:23 -07:00
cxlflash Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
device_handler scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate() 2023-03-16 23:02:23 -04:00
elx Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
esas2r modules-6.4-rc1 2023-04-27 16:36:55 -07:00
fcoe Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
fnic Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
hisi_sas scsi: hisi_sas: Work around build failure in suspend function 2023-04-11 21:13:22 -04:00
ibmvscsi scsi: ibmvfc: Declare SCSI host template const 2023-03-24 19:19:56 -04:00
ibmvscsi_tgt scsi: ibmvscsit: Remove default fabric ops callouts 2023-03-16 23:36:36 -04:00
isci scsi: isci: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
libfc scsi: libfc: Include the correct header 2022-12-01 03:03:36 +00:00
libsas scsi: libsas: Abort all in-flight requests when device is gone 2023-04-02 21:19:12 -04:00
lpfc SCSI misc on 20230426 2023-04-26 15:39:25 -07:00
megaraid Merge branch '6.3/scsi-fixes' into 6.4/scsi-staging 2023-03-31 21:45:14 -04:00
mpi3mr SCSI misc on 20230426 2023-04-26 15:39:25 -07:00
mpt3sas scsi: mpt3sas: Fix an issue when driver is being removed 2023-04-11 21:00:37 -04:00
mvsas scsi: mvsas: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
pcmcia scsi: pcmcia-sym53c500: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
pm8001 scsi: pcmcia-pm8001: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
qedf scsi: qedf: Remove unused 'num_handled' variable 2023-04-02 21:45:46 -04:00
qedi scsi: iscsi: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
qla2xxx SCSI misc on 20230426 2023-04-26 15:39:25 -07:00
qla4xxx scsi: qla4xxx: Remove unused 'count' variable 2023-04-02 21:48:46 -04:00
smartpqi scsi: smartpqi: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
snic scsi: snic: Remove unused 'xfer_len' variable 2023-04-02 21:47:36 -04:00
sym53c8xx_2 scsi: sym53c8xx: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
.gitignore
3w-9xxx.c scsi: 3w-9xxx: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
3w-9xxx.h
3w-sas.c scsi: 3w-sas: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
3w-sas.h scsi: 3w-sas: Replace 1-element arrays with flexible array members 2023-01-12 00:09:52 -05:00
3w-xxxx.c scsi: 3w-xxxx: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
3w-xxxx.h
53c700.c
53c700.h
53c700.scr
53c700_d.h_shipped
BusLogic.c scsi: BusLogic: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
BusLogic.h
FlashPoint.c
Kconfig
Makefile
NCR5380.c scsi: NCR5380: Fix repeated words in comment 2022-11-08 02:57:01 +00:00
NCR5380.h
a100u2w.c scsi: a100u2w: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
a100u2w.h
a2091.c scsi: a2091: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
a2091.h
a3000.c scsi: a3000: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
a3000.h
a4000t.c
advansys.c scsi: advansys: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
aha152x.c scsi: aha152x: Declare SCSI host template const 2023-03-24 19:19:20 -04:00
aha152x.h
aha1542.c scsi: aha1542: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
aha1542.h
aha1740.c scsi: aha1740: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
aha1740.h
am53c974.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
atari_scsi.c
atp870u.c scsi: atp870u: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
atp870u.h
bvme6000_scsi.c
ch.c driver core: class: remove module * from class_create() 2023-03-17 15:16:33 +01:00
constants.c
dc395x.c scsi: dc395x: Declare SCSI host template const 2023-03-24 19:19:21 -04:00
dc395x.h
dmx3191d.c scsi: dmx3191d: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
esp_scsi.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
esp_scsi.h scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
fdomain.c scsi: fdomain: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
fdomain.h
fdomain_isa.c
fdomain_pci.c
g_NCR5380.c scsi: NCR5380: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
gvp11.c scsi: gvp11: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
gvp11.h
hosts.c Merge branch '6.3/scsi-fixes' into 6.4/scsi-staging 2023-03-31 21:45:14 -04:00
hpsa.c Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
hpsa.h
hpsa_cmd.h
hptiop.c scsi: hptiop: Declare SCSI host template const 2023-03-24 19:19:56 -04:00
hptiop.h
imm.c scsi: imm: Declare SCSI host template const 2023-03-24 19:19:56 -04:00
imm.h
initio.c scsi: initio: Declare SCSI host template const 2023-03-24 19:19:56 -04:00
initio.h
ipr.c scsi: ipr: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
ipr.h
ips.c scsi: ips: Replace kmap_atomic() with kmap_local_page() 2023-01-18 18:41:12 -05:00
ips.h
iscsi_boot_sysfs.c
iscsi_tcp.c SCSI misc on 20230426 2023-04-26 15:39:25 -07:00
iscsi_tcp.h
jazz_esp.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
lasi700.c
libiscsi.c scsi: iscsi: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
libiscsi_tcp.c
mac53c94.c scsi: mac53c94: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
mac53c94.h
mac_esp.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
mac_scsi.c
megaraid.c scsi: megaraid: Fix mega_cmd_done() CMDID_INT_CMDS 2023-03-24 20:27:17 -04:00
megaraid.h
mesh.c scsi: mesh: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
mesh.h
mvme16x_scsi.c
mvme147.c scsi: mvme147: Declare SCSI host template const 2023-03-24 19:19:57 -04:00
mvme147.h
mvumi.c scsi: mvumi: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
mvumi.h scsi: mvumi: Replace 1-element arrays with flexible array members 2023-01-12 00:11:11 -05:00
myrb.c scsi: myrb: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
myrb.h
myrs.c scsi: myrs: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
myrs.h
ncr53c8xx.c
ncr53c8xx.h
nsp32.c scsi: nsp32: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
nsp32.h
nsp32_debug.c
nsp32_io.h
pmcraid.c Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
pmcraid.h
ppa.c scsi: ppa: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
ppa.h
ps3rom.c scsi: ps3rom: Declare SCSI host template const 2023-03-24 19:19:58 -04:00
qla1280.c scsi: qla1280: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
qla1280.h
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
qlogicpti.h
raid_class.c
script_asm.pl
scsi.c scsi: core: Improve scsi_vpd_inquiry() checks 2023-03-24 21:01:32 -04:00
scsi_bsg.c
scsi_common.c
scsi_debug.c scsi: scsi_debug: Fix missing error code in scsi_debug_init() 2023-04-11 21:15:00 -04:00
scsi_debugfs.c
scsi_debugfs.h
scsi_devinfo.c scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR 2023-03-16 22:54:43 -04:00
scsi_dh.c
scsi_error.c scsi: core: Declare most SCSI host template pointers const 2023-03-24 19:19:19 -04:00
scsi_ioctl.c scsi: core: Convert to scsi_execute_cmd() 2023-01-13 21:34:09 -05:00
scsi_lib.c scsi: core: Extend struct scsi_exec_args 2023-02-21 22:00:51 -05:00
scsi_lib_dma.c
scsi_logging.c
scsi_logging.h
scsi_netlink.c
scsi_pm.c
scsi_priv.h
scsi_proc.c
scsi_sas_internal.h
scsi_scan.c scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD 2023-03-09 20:57:58 -05:00
scsi_sysctl.c scsi: simplify sysctl registration with register_sysctl() 2023-04-13 11:49:20 -07:00
scsi_sysfs.c scsi: core: Declare most SCSI host template pointers const 2023-03-24 19:19:19 -04:00
scsi_trace.c
scsi_transport_api.h
scsi_transport_fc.c scsi: scsi_transport_fc: Remove unused 'desc_cnt' variable 2023-04-02 21:37:57 -04:00
scsi_transport_iscsi.c Merge branch '6.2/scsi-queue' into 6.2/scsi-fixes 2022-12-30 16:29:34 +00:00
scsi_transport_sas.c scsi: scsi_transport_sas: Fix error handling in sas_phy_add() 2022-11-08 01:52:52 +00:00
scsi_transport_spi.c scsi: spi: Convert to scsi_execute_cmd() 2023-01-13 21:34:09 -05:00
scsi_transport_srp.c scsi: core: Change the return type of .eh_timed_out() 2022-10-22 03:25:59 +00:00
scsicam.c
sd.c Merge 6.3-rc5 into driver-core-next 2023-04-03 09:33:30 +02:00
sd.h
sd_dif.c scsi: sd: Update DIX config every time sd_revalidate_disk() is called 2023-02-21 22:00:32 -05:00
sd_trace.h scsi: sd: sd_zbc: Trace zone append emulation 2022-12-01 03:13:55 +00:00
sd_zbc.c scsi: sd: Fix wrong zone_write_granularity value during revalidate 2023-03-06 18:33:13 -05:00
sense_codes.h
ses.c Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
sg.c driver core: class: remove struct class_interface * from callbacks 2023-04-03 21:42:52 +02:00
sgiwd93.c scsi: sgiwd93: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
sim710.c
sni_53c710.c
sr.c scsi: sr: Simplify the sr_open() function 2023-04-02 21:36:47 -04:00
sr.h
sr_ioctl.c scsi: sr: Convert to scsi_execute_cmd() 2023-01-13 21:34:09 -05:00
sr_vendor.c
st.c
st.h
st_options.h
stex.c scsi: stex: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
storvsc_drv.c scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file 2023-03-06 18:33:13 -05:00
sun3_scsi.c
sun3_scsi_vme.c
sun3x_esp.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00
sun_esp.c Merge patch series "Constify most SCSI host templates" 2023-03-24 20:13:03 -04:00
virtio_scsi.c scsi: virtio-scsi: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
vmw_pvscsi.c
vmw_pvscsi.h
wd33c93.c
wd33c93.h
wd719x.c scsi: wd719x: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
wd719x.h
xen-scsifront.c scsi: xen-scsifront: Declare SCSI host template const 2023-03-24 19:20:00 -04:00
zalon.c
zorro7xx.c
zorro_esp.c scsi: esp_scsi: Declare SCSI host template const 2023-03-24 19:19:22 -04:00