青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

S.l.e!ep.¢%

像打了激速一樣,以四倍的速度運轉,開心的工作
簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

內存崩潰的BUG (3)

Posted on 2009-04-01 13:35 S.l.e!ep.¢% 閱讀(1741) 評論(3)  編輯 收藏 引用 所屬分類: WinDbg

內存崩潰的BUG
內存崩潰的BUG (2)

在昨天的調試中,感謝JayZ
-----------------------------------------------------------------------------------------------------
地址段034bd000 - 00007000沒法訪問。

看調用棧0012e50c 0042ffc3 00000400 034c0fec 00000001 ws2_32!WSASend+0x61

WSASend的第二個參數為034c0fec很不幸的落在這個區間內。看WSASend的原型
int WSASend(
__in SOCKET s,
__in LPWSABUF lpBuffers,
__in DWORD dwBufferCount,
__out LPDWORD lpNumberOfBytesSent,
__in DWORD dwFlags,
__in LPWSAOVERLAPPED lpOverlapped,
__in LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
);
顯然第二個參數lpBuffers的地址非法。

call stack frame往上就是你的代碼了:
0012f580 0040e577 0012f5bc 00000014 0012f58c xxx.exe+xxx-function

你需要在這里確認一下為什么傳出的lpBuffers指向一個錯誤的地址
-------------------------------------------------------------------------------------------------------

傳入 WSASend 的第二個參數 lpBuffers 確實指向了一個錯誤的地址,
用 knL + .frame + x
查看了?? xxx.exe+xxx-function???? 的局部變量,發現

-------------------------------------------------------------------------------------------------------
PER_IO_CONTEXT* overlappedEx=new PER_IO_CONTEXT;????? 發現??overlappedEx ?這個指針已經指向的內存是不對的
overlappedEx->IOOperation= WRITE;
overlappedEx->wsabuf.buf= (char *)malloc( nLen );
if( NULL == overlappedEx->wsabuf.buf )
{
delete overlappedEx;
return -1;
}

if(WSASend(m_socket,&(overlappedEx->wsabuf), 0x01,
&(overlappedEx->dwBytes), overlappedEx->dwFlags,
&(overlappedEx->Overlapped), NULL ) == SOCKET_ERROR)
{

在IOCP通知后,會 delete overlappedEx
-------------------------------------------------------------------------------------------------------

懷疑是不是 overlappedEx 這個指針的值被其它地方修改了?
于是在局數變量中定義了多一個變量,在 WSASend 調用前,加多這個語句,

PER_IO_CONTEXT* p? = overlappedEx;

等了幾個小時,再次重現問題,

用 knL + .frame + x
查看了?? xxx.exe+xxx-function???? 的局部變量,發現

p 的值跟 overlappedEx 還是相等的, 但它們指向的內存卻是

0366fe8c p = 0x03443fd8
0:010> !address 0x03443fd8
??? 03442000 : 03442000 - 00007000
??????????????????? Type???? 00000000
??????????????????? Protect? 00000001 PAGE_NOACCESS
??????????????????? State??? 00010000 MEM_FREE????????????????
??????????????????? Usage??? RegionUsageFree
0:010> dd 0x03443fd8
03443fd8? ???????? ???????? ???????? ????????
03443fe8? ???????? ???????? ???????? ????????
03443ff8? ???????? ???????? ???????? ????????
03444008? ???????? ???????? ???????? ????????
03444018? ???????? ???????? ???????? ????????
03444028? ???????? ???????? ???????? ????????
03444038? ???????? ???????? ???????? ????????
03444048? ???????? ???????? ???????? ????????

0:010> KB
ChildEBP RetAddr? Args to Child?????????????
0366edac 71a26294 00000668 03443fec 00000001 mswsock!WSPSend+0x243
0366ede8 00430027 00000668 03443fec 00000001 ws2_32!WSASend+0x77

初步結論是: 在執行到? mswsock!WSPSend+0x243 ,在 WSASend 上一層 new 出來的? PER_IO_CONTEXT 已經被 delete 了

Feedback

# re: 內存崩潰的BUG (3)   回復  更多評論   

2009-04-02 00:15 by JayZ
看如下輸出:
03442000 : 03442000 - 00007000
Type 00000000
Protect 00000001 PAGE_NOACCESS
State 00010000 MEM_FREE
Usage RegionUsageFree
這個內存段甚至已經不屬于Heap了(RegionUsageFree)。

建議放個條件斷點在VirtualFree里面,來看一下這個內存段什么時候被free掉的。從call stack上面應該很容易就能發現問題。

# re: 內存崩潰的BUG (3)   回復  更多評論   

2009-04-02 08:36 by guest
下內存斷點來監視,看看到底是被誰給改了。

# re: 內存崩潰的BUG (3)   回復  更多評論   

2009-04-02 12:17 by S.l.e!ep.¢%
-------------------------------------------------------------------------------------------------------
PER_IO_CONTEXT* overlappedEx=new PER_IO_CONTEXT; 發現 overlappedEx 這個指針已經指向的內存是不對的
overlappedEx->IOOperation= WRITE;
overlappedEx->wsabuf.buf= (char *)malloc( nLen );
if( NULL == overlappedEx->wsabuf.buf )
{
delete overlappedEx;
return -1;
}

if(WSASend(m_socket,&(overlappedEx->wsabuf), 0x01,
&dwBytes, 0,
&(overlappedEx->Overlapped), NULL ) == SOCKET_ERROR)
{

在IOCP通知后,會 delete overlappedEx
-------------------------------------------------------------------------------------------------------

今天直接用 Windbg 啟動程序,在 在IOCP通知后,會 delete overlappedEx 用 OutPutDebugString 打日志,
發現 在 delete overlappedEx 后,
WSASend 還會訪問到 overlappedEx
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            老鸭窝91久久精品色噜噜导演| 国产精品视频yy9299一区| 亚洲国产成人91精品| 国产精品一区免费视频| 99精品国产热久久91蜜凸| 日韩视频免费在线| 亚洲视频精选| 午夜亚洲视频| 久久精品五月婷婷| 另类天堂视频在线观看| 欧美劲爆第一页| 欧美新色视频| 国产偷国产偷精品高清尤物| 国产亚洲日本欧美韩国| 黑人巨大精品欧美一区二区小视频| 国产在线国偷精品产拍免费yy| 国产亚洲精品久久久久久| 亚洲第一福利社区| 亚洲一区二区久久| 毛片av中文字幕一区二区| 亚洲国产一区在线观看| 亚洲精品欧美在线| 欧美伊人久久| 欧美日韩黄色大片| 国产精品专区第二| 亚洲精品1区| 午夜精品区一区二区三| 美女图片一区二区| 国产精品99久久久久久久vr| 性欧美精品高清| 国产精品jizz在线观看美国| 亚洲国产综合91精品麻豆| 亚洲综合电影一区二区三区| 久久伊伊香蕉| 亚洲男人影院| 欧美视频一区二| 亚洲国产欧美一区二区三区久久 | 黄色成人91| 亚洲先锋成人| 亚洲激情视频在线| 午夜免费电影一区在线观看 | 一区二区在线观看视频| 夜色激情一区二区| 免费在线国产精品| 欧美在线观看日本一区| 国产精品久久| 99精品视频一区二区三区| 玖玖国产精品视频| 欧美一区二区三区在线免费观看| 欧美精品久久久久a| 亚洲人成啪啪网站| 亚洲第一久久影院| 欧美成人视屏| 在线观看91久久久久久| 欧美在线视频网站| 亚洲视频 欧洲视频| 欧美午夜精品一区| 亚洲愉拍自拍另类高清精品| 亚洲国产天堂久久国产91| 欧美韩国日本一区| 亚洲一区二区三区三| 欧美激情综合色| 亚洲国产精品一区二区尤物区| 久久久人成影片一区二区三区| 亚洲在线观看视频网站| 国产精品sm| 欧美在线视频一区| 亚洲欧美激情精品一区二区| 国产精品va在线播放| 亚洲欧美视频在线| 亚洲欧美一区二区精品久久久| 国产精品视频第一区| 欧美在线视频观看| 久久国产日本精品| 一区免费在线| 欧美激情影音先锋| 欧美日韩国产精品一区| 日韩亚洲一区二区| 亚洲一区在线观看视频| 国产精品专区h在线观看| 久久久精品国产免大香伊| 久久精视频免费在线久久完整在线看| 国产亚洲欧洲997久久综合| 久久综合久久综合久久| 欧美大尺度在线| 一本色道久久综合狠狠躁篇的优点| 亚洲精品在线观看免费| 国产精品国产a| 久久综合久久88| 欧美另类videos死尸| 亚洲伊人网站| 免费亚洲婷婷| 欧美在线观看视频一区二区| 久久久www免费人成黑人精品| 一本到高清视频免费精品| 午夜视频在线观看一区| 99国产精品视频免费观看| 亚洲欧美在线免费观看| 亚洲精品久久久久久久久久久久| 亚洲精品国久久99热| 国产精品久久亚洲7777| 麻豆精品视频在线| 国产精品二区影院| 蜜桃久久精品一区二区| 欧美日韩在线不卡一区| 米奇777在线欧美播放| 欧美午夜激情小视频| 欧美国产一区视频在线观看| 国产精品色午夜在线观看| 亚洲国产精品嫩草影院| 国产一区二区精品在线观看| 91久久精品国产91久久性色tv| 国产精品专区h在线观看| 亚洲黄色影院| 在线成人激情视频| 亚洲欧美国产一区二区三区| 日韩一级片网址| 美国成人直播| 久久夜色精品国产欧美乱极品| 国产精品高潮呻吟| 99在线热播精品免费| 亚洲人体大胆视频| 伊人久久久大香线蕉综合直播| 欧美国产精品久久| 欧美日韩中文字幕在线| 欧美激情一区二区三级高清视频 | 久久久久久电影| 国产精品亚洲一区| 在线亚洲美日韩| 日韩一区二区久久| 嫩草国产精品入口| 男女视频一区二区| 国语自产精品视频在线看8查询8| 亚洲自拍偷拍色片视频| 亚洲一区二区三区视频| 欧美日韩三区| 99在线热播精品免费| 亚洲桃花岛网站| 欧美视频在线不卡| 日韩小视频在线观看| 亚洲欧洲精品一区二区精品久久久| 久久久精品欧美丰满| 欧美不卡一卡二卡免费版| 激情一区二区三区| 美女性感视频久久久| 欧美国产日韩在线| 日韩性生活视频| 欧美日韩久久不卡| 亚洲精品国产精品国自产观看| 91久久线看在观草草青青| 麻豆91精品91久久久的内涵| 最新高清无码专区| 午夜久久影院| 国语自产在线不卡| 欧美电影免费观看大全| 亚洲精品午夜| 久久高清一区| 最新日韩中文字幕| 国产精品美女久久久免费| 午夜精品久久久久久久99黑人| 久久精品色图| 亚洲国产精品久久91精品| 欧美大色视频| 在线一区亚洲| 久久五月激情| 一本色道久久综合亚洲精品按摩| 国产精品每日更新| 久热国产精品视频| 日韩视频在线观看一区二区| 久久久www成人免费毛片麻豆| 亚洲国产中文字幕在线观看| 欧美视频官网| 久久人人看视频| 日韩午夜激情av| 久久人人97超碰国产公开结果| 亚洲经典一区| 黑人一区二区三区四区五区| 欧美日韩不卡在线| 久久国产精品电影| 日韩一级精品| 久久综合狠狠综合久久激情| 夜夜嗨av一区二区三区中文字幕 | 久久国产精品一区二区三区| 91久久极品少妇xxxxⅹ软件| 国产精品中文字幕欧美| 欧美激情一区二区| 欧美在线免费一级片| 99国产精品久久久久久久| 欧美色精品天天在线观看视频| 亚洲视频一区在线| 麻豆9191精品国产| 亚洲欧美日韩精品久久奇米色影视| 好男人免费精品视频| 国产精品人人爽人人做我的可爱| 久热精品视频在线观看| 欧美淫片网站| 亚洲一区二区精品在线| 99riav1国产精品视频| 亚洲国产成人av| 亚洲高清自拍|