X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=drivers%2Ftarget%2Ftarget_core_user.c;h=da187e635ea3f485ac8b69e6f414fa69313095ca;hb=21aaa23b0ebbd19334fa461370c03cbb076b3295;hp=937cebf7663324b53a7fa773f519403a3953b87d;hpb=16651fc2f30dfe14dcdd59cf0ccb4e1ccdba4dc7;p=mirror_ubuntu-zesty-kernel.git diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c index 937cebf76633..da187e635ea3 100644 --- a/drivers/target/target_core_user.c +++ b/drivers/target/target_core_user.c @@ -194,7 +194,7 @@ static struct tcmu_cmd *tcmu_alloc_cmd(struct se_cmd *se_cmd) static inline void tcmu_flush_dcache_range(void *vaddr, size_t size) { - unsigned long offset = (unsigned long) vaddr & ~PAGE_MASK; + unsigned long offset = offset_in_page(vaddr); size = round_up(size+offset, PAGE_SIZE); vaddr -= offset; @@ -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;