Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Chen Gang
On 02/03/2014 11:42 PM, Masami Hiramatsu wrote:
> (2014/02/03 20:48), Chen Gang wrote:
>> On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
>>> (2014/02/01 21:17), Chen Gang wrote:
 When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
 is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
 enabled area.

 The related warning (allmodconfig under avr32):

   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used
>>>
>>> This patch itself looks good to me.
>>> And it seems that not only the cleanup_rp_inst, but also other
>>> kretprobe related functions should be moved (free_rp_inst,etc)
>>>
>>
>> OK, thanks, need/should I check them again and send patch v2 for them?
> 
> Yes, I'm happy to review it :)
> 
> Thank you!
> 

I will/should finish in these days (within 2014-02-07).

Thanks.
-- 
Chen Gang

Open, share and attitude like air, water and life which God blessed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Masami Hiramatsu
(2014/02/03 20:48), Chen Gang wrote:
> On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
>> (2014/02/01 21:17), Chen Gang wrote:
>>> When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
>>> is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
>>> enabled area.
>>>
>>> The related warning (allmodconfig under avr32):
>>>
>>>   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used
>>
>> This patch itself looks good to me.
>> And it seems that not only the cleanup_rp_inst, but also other
>> kretprobe related functions should be moved (free_rp_inst,etc)
>>
> 
> OK, thanks, need/should I check them again and send patch v2 for them?

Yes, I'm happy to review it :)

Thank you!

> 
> 
> Thanks.
> 


-- 
Masami HIRAMATSU
IT Management Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu...@hitachi.com


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Chen Gang
On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
> (2014/02/01 21:17), Chen Gang wrote:
>> When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
>> is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
>> enabled area.
>>
>> The related warning (allmodconfig under avr32):
>>
>>   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used
> 
> This patch itself looks good to me.
> And it seems that not only the cleanup_rp_inst, but also other
> kretprobe related functions should be moved (free_rp_inst,etc)
> 

OK, thanks, need/should I check them again and send patch v2 for them?


Thanks.
-- 
Chen Gang

Open, share and attitude like air, water and life which God blessed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Chen Gang
On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
 (2014/02/01 21:17), Chen Gang wrote:
 When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
 is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
 enabled area.

 The related warning (allmodconfig under avr32):

   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used
 
 This patch itself looks good to me.
 And it seems that not only the cleanup_rp_inst, but also other
 kretprobe related functions should be moved (free_rp_inst,etc)
 

OK, thanks, need/should I check them again and send patch v2 for them?


Thanks.
-- 
Chen Gang

Open, share and attitude like air, water and life which God blessed
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Masami Hiramatsu
(2014/02/03 20:48), Chen Gang wrote:
 On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
 (2014/02/01 21:17), Chen Gang wrote:
 When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
 is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
 enabled area.

 The related warning (allmodconfig under avr32):

   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used

 This patch itself looks good to me.
 And it seems that not only the cleanup_rp_inst, but also other
 kretprobe related functions should be moved (free_rp_inst,etc)

 
 OK, thanks, need/should I check them again and send patch v2 for them?

Yes, I'm happy to review it :)

Thank you!

 
 
 Thanks.
 


-- 
Masami HIRAMATSU
IT Management Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu...@hitachi.com


--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-03 Thread Chen Gang
On 02/03/2014 11:42 PM, Masami Hiramatsu wrote:
 (2014/02/03 20:48), Chen Gang wrote:
 On 02/02/2014 10:40 AM, Masami Hiramatsu wrote:
 (2014/02/01 21:17), Chen Gang wrote:
 When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
 is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
 enabled area.

 The related warning (allmodconfig under avr32):

   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used

 This patch itself looks good to me.
 And it seems that not only the cleanup_rp_inst, but also other
 kretprobe related functions should be moved (free_rp_inst,etc)


 OK, thanks, need/should I check them again and send patch v2 for them?
 
 Yes, I'm happy to review it :)
 
 Thank you!
 

I will/should finish in these days (within 2014-02-07).

Thanks.
-- 
Chen Gang

Open, share and attitude like air, water and life which God blessed
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-01 Thread Masami Hiramatsu
(2014/02/01 21:17), Chen Gang wrote:
> When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
> is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
> enabled area.
> 
> The related warning (allmodconfig under avr32):
> 
>   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used

This patch itself looks good to me.
And it seems that not only the cleanup_rp_inst, but also other
kretprobe related functions should be moved (free_rp_inst,etc)

Thank you,

> 
> 
> Signed-off-by: Chen Gang 
> ---
>  kernel/kprobes.c | 40 
>  1 file changed, 20 insertions(+), 20 deletions(-)
> 
> diff --git a/kernel/kprobes.c b/kernel/kprobes.c
> index ceeadfc..18a520d 100644
> --- a/kernel/kprobes.c
> +++ b/kernel/kprobes.c
> @@ -1178,26 +1178,6 @@ static inline void free_rp_inst(struct kretprobe *rp)
>   }
>  }
>  
> -static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
> -{
> - unsigned long flags, hash;
> - struct kretprobe_instance *ri;
> - struct hlist_node *next;
> - struct hlist_head *head;
> -
> - /* No race here */
> - for (hash = 0; hash < KPROBE_TABLE_SIZE; hash++) {
> - kretprobe_table_lock(hash, );
> - head = _inst_table[hash];
> - hlist_for_each_entry_safe(ri, next, head, hlist) {
> - if (ri->rp == rp)
> - ri->rp = NULL;
> - }
> - kretprobe_table_unlock(hash, );
> - }
> - free_rp_inst(rp);
> -}
> -
>  /*
>  * Add the new probe to ap->list. Fail if this is the
>  * second jprobe at the address - two jprobes can't coexist
> @@ -1885,6 +1865,26 @@ void __kprobes unregister_kretprobe(struct kretprobe 
> *rp)
>  }
>  EXPORT_SYMBOL_GPL(unregister_kretprobe);
>  
> +static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
> +{
> + unsigned long flags, hash;
> + struct kretprobe_instance *ri;
> + struct hlist_node *next;
> + struct hlist_head *head;
> +
> + /* No race here */
> + for (hash = 0; hash < KPROBE_TABLE_SIZE; hash++) {
> + kretprobe_table_lock(hash, );
> + head = _inst_table[hash];
> + hlist_for_each_entry_safe(ri, next, head, hlist) {
> + if (ri->rp == rp)
> + ri->rp = NULL;
> + }
> + kretprobe_table_unlock(hash, );
> + }
> + free_rp_inst(rp);
> +}
> +
>  void __kprobes unregister_kretprobes(struct kretprobe **rps, int num)
>  {
>   int i;
> 


-- 
Masami HIRAMATSU
IT Management Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu...@hitachi.com


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-01 Thread Chen Gang
When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
enabled area.

The related warning (allmodconfig under avr32):

  kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used


Signed-off-by: Chen Gang 
---
 kernel/kprobes.c | 40 
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index ceeadfc..18a520d 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -1178,26 +1178,6 @@ static inline void free_rp_inst(struct kretprobe *rp)
}
 }
 
-static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
-{
-   unsigned long flags, hash;
-   struct kretprobe_instance *ri;
-   struct hlist_node *next;
-   struct hlist_head *head;
-
-   /* No race here */
-   for (hash = 0; hash < KPROBE_TABLE_SIZE; hash++) {
-   kretprobe_table_lock(hash, );
-   head = _inst_table[hash];
-   hlist_for_each_entry_safe(ri, next, head, hlist) {
-   if (ri->rp == rp)
-   ri->rp = NULL;
-   }
-   kretprobe_table_unlock(hash, );
-   }
-   free_rp_inst(rp);
-}
-
 /*
 * Add the new probe to ap->list. Fail if this is the
 * second jprobe at the address - two jprobes can't coexist
@@ -1885,6 +1865,26 @@ void __kprobes unregister_kretprobe(struct kretprobe *rp)
 }
 EXPORT_SYMBOL_GPL(unregister_kretprobe);
 
+static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
+{
+   unsigned long flags, hash;
+   struct kretprobe_instance *ri;
+   struct hlist_node *next;
+   struct hlist_head *head;
+
+   /* No race here */
+   for (hash = 0; hash < KPROBE_TABLE_SIZE; hash++) {
+   kretprobe_table_lock(hash, );
+   head = _inst_table[hash];
+   hlist_for_each_entry_safe(ri, next, head, hlist) {
+   if (ri->rp == rp)
+   ri->rp = NULL;
+   }
+   kretprobe_table_unlock(hash, );
+   }
+   free_rp_inst(rp);
+}
+
 void __kprobes unregister_kretprobes(struct kretprobe **rps, int num)
 {
int i;
-- 
1.7.11.7
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-01 Thread Chen Gang
When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
enabled area.

The related warning (allmodconfig under avr32):

  kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used


Signed-off-by: Chen Gang gang.chen.5...@gmail.com
---
 kernel/kprobes.c | 40 
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index ceeadfc..18a520d 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -1178,26 +1178,6 @@ static inline void free_rp_inst(struct kretprobe *rp)
}
 }
 
-static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
-{
-   unsigned long flags, hash;
-   struct kretprobe_instance *ri;
-   struct hlist_node *next;
-   struct hlist_head *head;
-
-   /* No race here */
-   for (hash = 0; hash  KPROBE_TABLE_SIZE; hash++) {
-   kretprobe_table_lock(hash, flags);
-   head = kretprobe_inst_table[hash];
-   hlist_for_each_entry_safe(ri, next, head, hlist) {
-   if (ri-rp == rp)
-   ri-rp = NULL;
-   }
-   kretprobe_table_unlock(hash, flags);
-   }
-   free_rp_inst(rp);
-}
-
 /*
 * Add the new probe to ap-list. Fail if this is the
 * second jprobe at the address - two jprobes can't coexist
@@ -1885,6 +1865,26 @@ void __kprobes unregister_kretprobe(struct kretprobe *rp)
 }
 EXPORT_SYMBOL_GPL(unregister_kretprobe);
 
+static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
+{
+   unsigned long flags, hash;
+   struct kretprobe_instance *ri;
+   struct hlist_node *next;
+   struct hlist_head *head;
+
+   /* No race here */
+   for (hash = 0; hash  KPROBE_TABLE_SIZE; hash++) {
+   kretprobe_table_lock(hash, flags);
+   head = kretprobe_inst_table[hash];
+   hlist_for_each_entry_safe(ri, next, head, hlist) {
+   if (ri-rp == rp)
+   ri-rp = NULL;
+   }
+   kretprobe_table_unlock(hash, flags);
+   }
+   free_rp_inst(rp);
+}
+
 void __kprobes unregister_kretprobes(struct kretprobe **rps, int num)
 {
int i;
-- 
1.7.11.7
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] kernel/kprobes.c: move cleanup_rp_inst() to where CONFIG_KRETPROBES enabled

2014-02-01 Thread Masami Hiramatsu
(2014/02/01 21:17), Chen Gang wrote:
 When CONFIG_KRETPROBES disabled, cleanup_rp_inst() is useless too. It
 is only called by unregister_kretprobes() which is in CONFIG_KRETPROBES
 enabled area.
 
 The related warning (allmodconfig under avr32):
 
   kernel/kprobes.c:1181: warning: 'cleanup_rp_inst' defined but not used

This patch itself looks good to me.
And it seems that not only the cleanup_rp_inst, but also other
kretprobe related functions should be moved (free_rp_inst,etc)

Thank you,

 
 
 Signed-off-by: Chen Gang gang.chen.5...@gmail.com
 ---
  kernel/kprobes.c | 40 
  1 file changed, 20 insertions(+), 20 deletions(-)
 
 diff --git a/kernel/kprobes.c b/kernel/kprobes.c
 index ceeadfc..18a520d 100644
 --- a/kernel/kprobes.c
 +++ b/kernel/kprobes.c
 @@ -1178,26 +1178,6 @@ static inline void free_rp_inst(struct kretprobe *rp)
   }
  }
  
 -static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
 -{
 - unsigned long flags, hash;
 - struct kretprobe_instance *ri;
 - struct hlist_node *next;
 - struct hlist_head *head;
 -
 - /* No race here */
 - for (hash = 0; hash  KPROBE_TABLE_SIZE; hash++) {
 - kretprobe_table_lock(hash, flags);
 - head = kretprobe_inst_table[hash];
 - hlist_for_each_entry_safe(ri, next, head, hlist) {
 - if (ri-rp == rp)
 - ri-rp = NULL;
 - }
 - kretprobe_table_unlock(hash, flags);
 - }
 - free_rp_inst(rp);
 -}
 -
  /*
  * Add the new probe to ap-list. Fail if this is the
  * second jprobe at the address - two jprobes can't coexist
 @@ -1885,6 +1865,26 @@ void __kprobes unregister_kretprobe(struct kretprobe 
 *rp)
  }
  EXPORT_SYMBOL_GPL(unregister_kretprobe);
  
 +static void __kprobes cleanup_rp_inst(struct kretprobe *rp)
 +{
 + unsigned long flags, hash;
 + struct kretprobe_instance *ri;
 + struct hlist_node *next;
 + struct hlist_head *head;
 +
 + /* No race here */
 + for (hash = 0; hash  KPROBE_TABLE_SIZE; hash++) {
 + kretprobe_table_lock(hash, flags);
 + head = kretprobe_inst_table[hash];
 + hlist_for_each_entry_safe(ri, next, head, hlist) {
 + if (ri-rp == rp)
 + ri-rp = NULL;
 + }
 + kretprobe_table_unlock(hash, flags);
 + }
 + free_rp_inst(rp);
 +}
 +
  void __kprobes unregister_kretprobes(struct kretprobe **rps, int num)
  {
   int i;
 


-- 
Masami HIRAMATSU
IT Management Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu...@hitachi.com


--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/