X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=kernel%2Fconfigs.c;h=e84d3f9c6c7ba87218df59577462fc2523c0b6f9;hb=ca6435f188a0ce40eae716c158053e49130886a3;hp=f9e31974f4addf262cee19d1049f6b1fd55bc47e;hpb=c4e00fac42f268ed0a547cdd1d12bb8399864040;p=linux-2.6 diff --git a/kernel/configs.c b/kernel/configs.c index f9e31974f4..e84d3f9c6c 100644 --- a/kernel/configs.c +++ b/kernel/configs.c @@ -61,21 +61,12 @@ static ssize_t ikconfig_read_current(struct file *file, char __user *buf, size_t len, loff_t * offset) { - loff_t pos = *offset; - ssize_t count; - - if (pos >= kernel_config_data_size) - return 0; - - count = min(len, (size_t)(kernel_config_data_size - pos)); - if (copy_to_user(buf, kernel_config_data + MAGIC_SIZE + pos, count)) - return -EFAULT; - - *offset += count; - return count; + return simple_read_from_buffer(buf, len, offset, + kernel_config_data + MAGIC_SIZE, + kernel_config_data_size); } -static struct file_operations ikconfig_file_ops = { +static const struct file_operations ikconfig_file_ops = { .owner = THIS_MODULE, .read = ikconfig_read_current, };