Merge android11-5.4.180+ (e7792e2) into msm-5.4

* refs/heads/tmp-e7792e2:
  BACKPORT: scsi: ufs: Resume ufs host before accessing ufs device
  BACKPORT: can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error path
  ANDROID: ABI: Added symbols for allwinner
  BACKPORT: can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error path
  BACKPORT: esp: Fix possible buffer overflow in ESP transformation
  ANDROID: ABI: Update allowed list for QCOM
  ANDROID: dm-bow: Protect Ranges fetched and erased from the RB tree
  BACKPORT: staging: ion: Prevent incorrect reference counting behavour
  FROMGIT: net: fix wrong network header length
  ANDROID: fix KCFLAGS override by __ANDROID_COMMON_KERNEL__
  ANDROID: Add flag to indicate compiling against ACK
  BACKPORT: net/packet: fix slab-out-of-bounds access in packet_recvmsg()
  BACKPORT: block: Add a helper to validate the block size
  BACKPORT: virtio-blk: Use blk_validate_block_size() to validate block size
  BACKPORT: fuse: fix pipe buffer lifetime for direct_io
  ANDROID: ABI: Update allowed list for galaxy

 Conflicts:
	build.config.common
	drivers/scsi/ufs/ufs-sysfs.c

Change-Id: I7dc73e85ca1412a1d00422fd4a62724f65581aec
Signed-off-by: Srinivasarao Pathipati <[email protected]>
This commit is contained in:
Srinivasarao Pathipati 2022-05-30 12:31:52 +05:30
commit eb03a71570
22 changed files with 1010 additions and 857 deletions

View file

@ -989,9 +989,17 @@ static int virtblk_probe(struct virtio_device *vdev)
err = virtio_cread_feature(vdev, VIRTIO_BLK_F_BLK_SIZE,
struct virtio_blk_config, blk_size,
&blk_size);
if (!err)
if (!err) {
err = blk_validate_block_size(blk_size);
if (err) {
dev_err(&vdev->dev,
"virtio_blk: invalid block size: 0x%x\n",
blk_size);
goto out_cleanup_disk;
}
blk_queue_logical_block_size(q, blk_size);
else
} else
blk_size = queue_logical_block_size(q);
/* Use topology information if available */
@ -1061,6 +1069,8 @@ static int virtblk_probe(struct virtio_device *vdev)
device_add_disk(&vdev->dev, vblk->disk, virtblk_attr_groups);
return 0;
out_cleanup_disk:
blk_cleanup_queue(vblk->disk->queue);
out_free_tags:
blk_mq_free_tag_set(&vblk->tag_set);
out_put_disk: