_may_promote hotfix.
- [x] closes #58428 


If `is_valid_na_for_dtype(fill_value, dtype)` is passing then why is there a need to change `dtype` to accomodate na and call `ensure_dtype_can_hold_na` which unnecessarily promotes dtype from `int64` to `float64`
Thanks for the pull request, but it appears to have gone stale. If interested in continuing, please merge in the main branch, address any review comments and/or failing tests, and we can reopen.