Re: [PATCH 0/8] introduce dynamic device creation/removal

Andrew Morton
2015-02-27T22:51:12Z

On Thu, 26 Feb 2015 23:10:35 +0900 Sergey Senozhatsky <sergey.senozhatsky@gmail.com> wrote:

> Hello,
>
> this patchset introduces dynamic (on demand) zram device add-remove
> functionality via /dev/zram-control interface. Two ioctl commands are
> defined as of now (accessible in user-space via new zram.h header file):
> -- ZRAM_CTL_ADD
> add new device (generates device_id automatically or uses provided
> device_id)
> -- ZRAM_CTL_REMOVE
> remove device (by device_id)
>
> util-linux zramctl update will be done later, after we land this patchset.
>
>
> This also opens a possibility to drop some of sysfs device attrs and FOO_show()
> code duplication in the future, and provide device stats/info via ioctl call
> instead, providing something like (via zram.h):
>
> struct zram_info {
> __u64 orig_data_size;
> __u64 mem_used_total;
> __u64 max_comp_streams;
>
> [..]
> };
>
>
> fill it under ->init_lock in zram_fill_info() (or any other name) function and
> return all device stats at once back to user-space in a single syscall.
>
> This is a long term plan, of course, but I'd like to see sysfs functions go away
> in a year or so. What do you think?

hoo boy. Creating a /dev node and doing ioctls on it is really old
school. So old school that I've forgotten why we don't do it any more.

Hopefully Alan can recall the thinking?