lkml.org 
[lkml]   [2008]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH 1/2] cpusets: restructure the function update_cpumask() and update_nodemask()
    >> kernel/cpuset.c: In function 'cpuset_write_resmask':
    >> kernel/cpuset.c:1374: warning: passing argument 2 of 'update_nodemask' discards qualifiers from pointer target type
    >>
    >> Did you not get this warning also?
    >>
    >> I don't know how to fix it. cftype.write_string() requires a const
    >> char* in the third arg, but we then go on to call update_nodemask(),
    >> which does a strstrip() on this allegedly-const char array.
    >>
    >
    > That strstrip() should be removed. because cgroup_write_string() already strstrip()ed
    > the buffer. Paul M's original patch removed that 2 strstrip()s in cpuset.c.
    >

    Here is the patch:

    --- linux-2.6.26-rc7/kernel/cpuset.c.bak 2008-07-02 17:53:07.000000000 +0800
    +++ linux-2.6.26-rc7/kernel/cpuset.c 2008-07-02 17:53:23.000000000 +0800
    @@ -1011,7 +1011,7 @@ done:
    * lock each such tasks mm->mmap_sem, scan its vma's and rebind
    * their mempolicies to the cpusets new mems_allowed.
    */
    -static int update_nodemask(struct cpuset *cs, char *buf)
    +static int update_nodemask(struct cpuset *cs, const char *buf)
    {
    struct cpuset trialcs;
    nodemask_t oldmem;
    @@ -1032,7 +1032,6 @@ static int update_nodemask(struct cpuset
    * that parsing. The validate_change() call ensures that cpusets
    * with tasks have memory.
    */
    - buf = strstrip(buf);
    if (!*buf) {
    nodes_clear(trialcs.mems_allowed);
    } else {

    >> Taking a copy of the string in update_nodemask() would fix things, but
    >> that's pretty lame.
    >>


    \
     
     \ /
      Last update: 2008-07-02 12:01    [W:3.994 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site