Opened 11 years ago

Last modified 6 years ago

#528 new defect

Address space area leak in remote_ahci_read/write_blocks()

Reported by: Jakub Jermář Owned by:
Priority: major Milestone:
Component: helenos/lib/other Version: mainline
Keywords: Cc:
Blocker for: Depends on:
See also:

Description (last modified by Jakub Jermář)

It looks like there is a leak of a shared address space area in remote_ahci_write_blocks() and remote_ahci_read_blocks():

        void *buf;
        async_share_out_finalize(cid, &buf);

        const uint64_t blocknum =
            (((uint64_t) (DEV_IPC_GET_ARG1(*call))) << 32) |
            (((uint64_t) (DEV_IPC_GET_ARG2(*call))) & 0xffffffff);
        const size_t cnt = (size_t) DEV_IPC_GET_ARG3(*call);

        const int ret = ahci_iface->read_blocks(fun, blocknum, cnt, buf);

        async_answer_0(callid, ret);
}

buf is passed to ahci_read/write_blocks(), but it is never as_destroy()'ed in either of them nor in any other part of the ahci driver or libdrv.

Change History (3)

comment:1 by Jakub Jermář, 11 years ago

Description: modified (diff)

comment:2 by Jakub Jermář, 10 years ago

Milestone: 0.6.00.7.1

comment:3 by Jakub Jermář, 6 years ago

Milestone: 0.7.1
Note: See TracTickets for help on using tickets.