Re: git-http-fetch segfault, curl 7.18.0

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

 



On Sun, Mar 02, 2008 at 07:08:57PM +0000, Gerrit Pape wrote:
> Hi, as reported through http://bugs.debian.org/468836, I can reproduce
> with current maint branch on Debian/unstable, but I don't know whether
> it's a problem in curl, or in git.  Maybe anyone with some experience
> in curl can help on this?
> 
> gdb gives this
(...)

valgrind gives better insight:
==862== Invalid read of size 4
==862==    at 0x493B32: fill_active_slots (http.c:441)
==862==    by 0x493CF9: step_active_slots (http.c:459)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c558 is 16 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862== 
==862== Invalid read of size 8
==862==    at 0x493B50: fill_active_slots (http.c:445)
==862==    by 0x493CF9: step_active_slots (http.c:459)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c588 is 64 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862== 
==862== Invalid read of size 8
==862==    at 0x493BFD: process_curl_messages (http.c:74)
==862==    by 0x493CF4: step_active_slots (http.c:458)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c548 is 0 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862== 
==862== Invalid read of size 8
==862==    at 0x493BF0: process_curl_messages (http.c:76)
==862==    by 0x493CF4: step_active_slots (http.c:458)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c588 is 64 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862== 
==862== Invalid read of size 4
==862==    at 0x494372: get_active_slot (http.c:336)
==862==    by 0x49504A: start_object_request (http-walker.c:195)
==862==    by 0x495413: fill_active_slot (http-walker.c:321)
==862==    by 0x493B1C: fill_active_slots (http.c:433)
==862==    by 0x493CF9: step_active_slots (http.c:459)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c558 is 16 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862== 
==862== Invalid read of size 8
==862==    at 0x494379: get_active_slot (http.c:337)
==862==    by 0x49504A: start_object_request (http-walker.c:195)
==862==    by 0x495413: fill_active_slot (http-walker.c:321)
==862==    by 0x493B1C: fill_active_slots (http.c:433)
==862==    by 0x493CF9: step_active_slots (http.c:459)
==862==    by 0x493D6E: run_active_slot (http.c:479)
==862==    by 0x493F8B: http_cleanup (http.c:296)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)
==862==  Address 0x7c7c588 is 64 bytes inside a block of size 72 free'd
==862==    at 0x4C20B2E: free (vg_replace_malloc.c:323)
==862==    by 0x493F47: http_cleanup (http.c:301)
==862==    by 0x494CA8: cleanup (http-walker.c:900)
==862==    by 0x4911D6: walker_free (walker.c:315)
==862==    by 0x44A149: cmd_http_fetch (builtin-http-fetch.c:81)
==862==    by 0x404247: handle_internal_command (git.c:248)
==862==    by 0x4049D4: main (git.c:412)

It seems there is something wrong going on with slots...

Mike
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux