Thread (9 messages) 9 messages, 5 authors, 2023-06-29

Re: [PATCH v3] block: add check that partition length needs to be aligned with block size

From: Chaitanya Kulkarni <hidden>
Date: 2023-06-29 01:04:29
Also in: lkml

On 6/28/23 10:07, Min Li wrote:
On Mon, Jun 28, 2023 at 04:48:36PM +0000, Christoph Hellwig  wrote:
quoted
They are long long in the UAPI, which is weird but has been that way
for a long time.  So I think we need checks for negative values
before they are shifted and converted to a sector_t.
Do you mean that we need to check if p.start and p.length are negative?

Thanks for your reply

Min li
I think so, from include/uapi/linux/blkpg.h:-

/* The data structure for ADD_PARTITION and DEL_PARTITION */
struct blkpg_partition {
         long long start;                /* starting offset in bytes */
         long long length;               /* length in bytes */
         int pno;                        /* partition number */
         char devname[BLKPG_DEVNAMELTH]; /* unused / ignored */
         char volname[BLKPG_VOLNAMELTH]; /* unused / ignore */
};

so start and length can take -ve, hence in your patch we need to error
out instead inviting overflow bugs right after or before IS_ALIGNED
check.

-ck

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help