diff --git a/Documentation/translations/zh_CN/mm/highmem.rst b/Documentation/translations/zh_CN/mm/highmem.rst index f74800a6d9a7036ad9652a6d02b883305880b205..2c0ee0cbf5c492b01d6dd45de914eb9986652084 100644 --- a/Documentation/translations/zh_CN/mm/highmem.rst +++ b/Documentation/translations/zh_CN/mm/highmem.rst @@ -57,15 +57,29 @@ 在å¯è¡Œçš„情况下,这个函数应该比其他所有的函数优先使用。 - è¿™äº›æ˜ å°„æ˜¯çº¿ç¨‹æœ¬åœ°å’ŒCPU本地的,这æ„味ç€æ˜ å°„åªèƒ½ä»Žè¿™ä¸ªçº¿ç¨‹ä¸è®¿é—®ï¼Œå¹¶ä¸”å½“æ˜ å°„å¤„äºŽæ´»åŠ¨çŠ¶ - æ€æ—¶ï¼Œè¯¥çº¿ç¨‹ä¸ŽCPU绑定。å³ä½¿çº¿ç¨‹è¢«æŠ¢å äº†ï¼ˆå› ä¸ºæŠ¢å 永远ä¸ä¼šè¢«å‡½æ•°ç¦ç”¨ï¼‰ï¼ŒCPU也ä¸èƒ½é€šè¿‡ - CPU-hotplug从系统ä¸æ‹”å‡ºï¼Œç›´åˆ°æ˜ å°„è¢«å¤„ç†æŽ‰ã€‚ + è¿™äº›æ˜ å°„æ˜¯çº¿ç¨‹æœ¬åœ°å’ŒCPU本地的,这æ„味ç€æ˜ å°„åªèƒ½ä»Žè¿™ä¸ªçº¿ç¨‹ä¸è®¿é—®ï¼Œå¹¶ä¸”å½“æ˜ å°„å¤„äºŽæ´»è·ƒçŠ¶ + æ€æ—¶ï¼Œçº¿ç¨‹è¢«ç»‘定到CPU上。尽管这个函数从æ¥æ²¡æœ‰ç¦ç”¨è¿‡æŠ¢å ï¼Œä½†åœ¨æ˜ å°„è¢«å¤„ç†ä¹‹å‰ï¼ŒCPUä¸èƒ½ + 通过CPU-hotplug从系统ä¸æ‹”出。 在本地的kmap区域ä¸é‡‡å–pagefaults是有效的,除éžèŽ·å–æœ¬åœ°æ˜ å°„çš„ä¸Šä¸‹æ–‡ç”±äºŽå…¶ä»–åŽŸå› ä¸å…许 è¿™æ ·åšã€‚ + 如å‰æ‰€è¿°ï¼Œç¼ºé¡µå¼‚常和抢å 从未被ç¦ç”¨ã€‚没有必è¦ç¦ç”¨æŠ¢å ï¼Œå› ä¸ºå½“ä¸Šä¸‹æ–‡åˆ‡æ¢åˆ°ä¸€ä¸ªä¸åŒçš„任务 + æ—¶ï¼Œç¦»å¼€çš„ä»»åŠ¡çš„æ˜ å°„è¢«ä¿å˜ï¼Œè€Œè¿›å…¥çš„ä»»åŠ¡çš„æ˜ å°„è¢«æ¢å¤ã€‚ + kmap_local_page()总是返回一个有效的虚拟地å€ï¼Œå¹¶ä¸”å‡å®škunmap_local()ä¸ä¼šå¤±è´¥ã€‚ + 在CONFIG_HIGHMEM=nçš„å†…æ ¸ä¸ï¼Œå¯¹äºŽä½Žå†…å˜é¡µï¼Œå®ƒè¿”å›žç›´æŽ¥æ˜ å°„çš„è™šæ‹Ÿåœ°å€ã€‚åªæœ‰çœŸæ£çš„高内 + å˜é¡µé¢æ‰ä¼šè¢«ä¸´æ—¶æ˜ å°„ã€‚å› æ¤ï¼Œç”¨æˆ·å¯ä»¥ä¸ºé‚£äº›å·²çŸ¥ä¸æ˜¯æ¥è‡ªZONE_HIGHMEM的页é¢è°ƒç”¨æ™®é€šçš„ + page_address()。然而,使用kmap_local_page() / kunmap_local()总是安全的。 + + 虽然它比kmap()快得多,但在高内å˜çš„情况下,它对指针的有效性有é™åˆ¶ã€‚与kmap()æ˜ å°„ç›¸å, + æœ¬åœ°æ˜ å°„åªåœ¨è°ƒç”¨è€…的上下文ä¸æœ‰æ•ˆï¼Œä¸èƒ½ä¼ 递给其他上下文。这æ„味ç€ç”¨æˆ·å¿…é¡»ç»å¯¹ä¿è¯è¿”回 + 地å€çš„使用åªé™äºŽæ˜ 射它的线程。 + + 大多数代ç å¯ä»¥è¢«è®¾è®¡æˆä½¿ç”¨çº¿ç¨‹æœ¬åœ°æ˜ å°„ã€‚å› æ¤ï¼Œç”¨æˆ·åœ¨è®¾è®¡ä»–们的代ç 时,应该尽é‡é¿å…使用 + kmap(),将页é¢æ˜ 射到将被使用的åŒä¸€çº¿ç¨‹ä¸ï¼Œå¹¶ä¼˜å…ˆä½¿ç”¨kmap_local_page()。 + 嵌套kmap_local_page()å’Œkmap_atomic()æ˜ å°„åœ¨ä¸€å®šç¨‹åº¦ä¸Šæ˜¯å…许的(最多到KMAP_TYPE_NR), ä½†æ˜¯å®ƒä»¬çš„è°ƒç”¨å¿…é¡»ä¸¥æ ¼æŽ’åºï¼Œå› ä¸ºæ˜ å°„çš„å®žçŽ°æ˜¯åŸºäºŽå †æ ˆçš„ã€‚å…³äºŽå¦‚ä½•ç®¡ç†åµŒå¥—æ˜ å°„çš„ç»†èŠ‚ï¼Œ 请å‚è§kmap_local_page() kdocs(包å«åœ¨ "函数 "部分)。