Re: [RFC PATCH 1/3] proc/meminfo: introduce extra meminfo

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2020년 03월 11일 15:25, Sergey Senozhatsky wrote:
> On (20/03/11 15:18), Sergey Senozhatsky wrote:
>> On (20/03/11 12:44), Jaewon Kim wrote:
>> [..]
>>> +#define NAME_SIZE      15
>>> +#define NAME_BUF_SIZE  (NAME_SIZE + 2) /* ':' and '\0' */
>>> +
>>> +struct extra_meminfo {
>>> +	struct list_head list;
>>> +	atomic_long_t *val;
>>> +	int shift_for_page;
>>> +	char name[NAME_BUF_SIZE];
>>> +	char name_pad[NAME_BUF_SIZE];
>>> +};
>>> +
>>> +int register_extra_meminfo(atomic_long_t *val, int shift, const char *name)
>>> +{
>>> +	struct extra_meminfo *meminfo, *memtemp;
>>> +	int len;
>>> +	int error = 0;
>>> +
>>> +	meminfo = kzalloc(sizeof(*meminfo), GFP_KERNEL);
>>> +	if (!meminfo) {
>>> +		error = -ENOMEM;
>>> +		goto out;
>>> +	}
>>> +
>>> +	meminfo->val = val;
>>> +	meminfo->shift_for_page = shift;
>>> +	strncpy(meminfo->name, name, NAME_SIZE);
>>> +	len = strlen(meminfo->name);
>>> +	meminfo->name[len] = ':';
>>> +	strncpy(meminfo->name_pad, meminfo->name, NAME_BUF_SIZE);
>> What happens if there is no NULL byte among the first NAME_SIZE bytes
>> of passed `name'?
> Ah. The buffer size is NAME_BUF_SIZE, so should be fine.
>
> 	-ss
Hello yes correct.

For your comment of 'spinlock', it may be changed to other lock like rw semaphore.
I think there are just couple of writers compared to many readers.
Thank you for your comment.
>
>






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux