diff options
author | Sheng Yang <sheng@yasker.org> | 2015-12-28 11:57:39 -0800 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2016-01-07 13:57:51 -0800 |
commit | 81ee28de860095cc0c063b92eea53cb97771f796 (patch) | |
tree | 4c18e0b5c95cf11405c886abd91af11f07318278 | |
parent | 373a4cd7378220d3c5a69fd369b1d78fee3207b2 (diff) | |
download | op-kernel-dev-81ee28de860095cc0c063b92eea53cb97771f796.zip op-kernel-dev-81ee28de860095cc0c063b92eea53cb97771f796.tar.gz |
target/user: Allow user to set block size before enabling device
The capability of setting hw_block_size was added along with 9c1cd1b68
"target/user: Only support full command pass-through", though default
setting override the user specified value during the enabling of device,
which called by target_configure_device() to set block_size matching
hw_block_size, result in user not able to set different block size other
than default 512.
This patch would use existing hw_block_size value if already set, otherwise
it would be set to default value(512).
Update: Fix the coding style issue.
(Drop unnecessary re-export of dev->dev_attrib.block_size - nab)
Signed-off-by: Sheng Yang <sheng@yasker.org>
Cc: Andy Grover <agrover@redhat.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
-rw-r--r-- | drivers/target/target_core_user.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c index d5477c0..da187e6 100644 --- a/drivers/target/target_core_user.c +++ b/drivers/target/target_core_user.c @@ -917,8 +917,10 @@ static int tcmu_configure_device(struct se_device *dev) if (ret) goto err_register; + /* User can set hw_block_size before enable the device */ + if (dev->dev_attrib.hw_block_size == 0) + dev->dev_attrib.hw_block_size = 512; /* Other attributes can be configured in userspace */ - dev->dev_attrib.hw_block_size = 512; dev->dev_attrib.hw_max_sectors = 128; dev->dev_attrib.hw_queue_depth = 128; |