"value":"In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: clean up our handling of refs == 0 in snapshot delete\n\nIn reada we BUG_ON(refs == 0), which could be unkind since we aren't\nholding a lock on the extent leaf and thus could get a transient\nincorrect answer. In walk_down_proc we also BUG_ON(refs == 0), which\ncould happen if we have extent tree corruption. Change that to return\n-EUCLEAN. In do_walk_down() we catch this case and handle it correctly,\nhowever we return -EIO, which -EUCLEAN is a more appropriate error code.\nFinally in walk_up_proc we have the same BUG_ON(refs == 0), so convert\nthat to proper error handling. Also adjust the error message so we can\nactually do something with the information."
"value":"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: btrfs: limpia nuestro manejo de refs == 0 en la eliminaci\u00f3n de instant\u00e1neas En reada tenemos BUG_ON(refs == 0), lo que podr\u00eda ser desagradable ya que no estamos manteniendo un bloqueo en la hoja de extensi\u00f3n y, por lo tanto, podr\u00edamos obtener una respuesta incorrecta transitoria. En walk_down_proc tambi\u00e9n tenemos BUG_ON(refs == 0), lo que podr\u00eda suceder si tenemos corrupci\u00f3n del \u00e1rbol de extensi\u00f3n. Cambia eso para que devuelva -EUCLEAN. En do_walk_down() capturamos este caso y lo manejamos correctamente, sin embargo, devolvemos -EIO, que -EUCLEAN es un c\u00f3digo de error m\u00e1s apropiado. Finalmente, en walk_up_proc tenemos el mismo BUG_ON(refs == 0), as\u00ed que convi\u00e9rtelo en un manejo de errores adecuado. Tambi\u00e9n ajusta el mensaje de error para que podamos hacer algo con la informaci\u00f3n."